package cn.iocoder.yudao.module.hs.controller.admin.material.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - 物料信息 Response VO")
@Data
@ExcelIgnoreUnannotated
public class MaterialRespVO {

    @Schema(description = "物料主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "16698")
    @ExcelProperty("物料主键")
    private Long id;

    @Schema(description = "物料名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
    @ExcelProperty("物料名称")
    private String name;

    @Schema(description = "产品码", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("产品码")
    private String code;

    @Schema(description = "物料代码", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("物料代码")
    private String modeCode;

    @Schema(description = "所在仓库", requiredMode = Schema.RequiredMode.REQUIRED, example = "6637")
    @ExcelProperty("所在仓库")
    private Long warehouseId;

    @Schema(description = "物料箱编码")
    @ExcelProperty("物料箱编码")
    private String boxCode;

    @Schema(description = "托盘编码", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("托盘编码")
    private String trayCode;

    @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("状态")
    private Integer status;

    @Schema(description = "入库时间")
    @ExcelProperty("入库时间")
    private LocalDateTime warehousingTime;

    @Schema(description = "出库时间")
    @ExcelProperty("出库时间")
    private LocalDateTime shipTime;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "拣货状态")
    private Integer pickStatus = 0;

    @Schema(description = "拣货任务编码")
    private String pickTaskCode;

    @Schema(description = "质检结果")
    private String qcResult;

    @Schema(description = "质检箱编码")
    private String infoCode;

    @Schema(description = "是否入库质检：1-是；0-不是")
    @ExcelProperty("是否入库质检：1-是；0-不是")
    private Integer isEntry;
}